package leetcode_core.leetcode_5;

import java.util.ArrayList;
import java.util.List;

/**
 * 功能描述
 *
 * @author: 张庭杰
 * @date: 2023年01月04日 11:35
 */
public class Generate {
    public List<List<Integer>> generate(int numRows) {
        List<List<Integer>> list = new ArrayList<>();
        //初始化
        list.add(new ArrayList<>());
        list.get(0).add(1);
        //第一行初始化完毕
        for(int i = 1;i<numRows;i++){
            list.add(new ArrayList<>());
            List<Integer> thisRow = list.get(i);
            List<Integer> lastRow = list.get(i - 1);
            int lastSize = lastRow.size();
            //进行计算
            for(int j = 0;j<i+1;j++){
                if(j-1 == -1){
                    thisRow.add(lastRow.get(j));
                }else if(j == lastSize){
                    thisRow.add(lastRow.get(j-1));
                }else{
                    thisRow.add(lastRow.get(j)+lastRow.get(j-1));
                }
            }
        }
        return list;
    }
}
